[IA64] HMVOP_get_param return parameter value
authorawilliam@xenbuild.aw <awilliam@xenbuild.aw>
Tue, 22 Aug 2006 20:40:48 +0000 (14:40 -0600)
committerawilliam@xenbuild.aw <awilliam@xenbuild.aw>
Tue, 22 Aug 2006 20:40:48 +0000 (14:40 -0600)
HMVOP_get_param return parameter value within the provided
parameter struct for IPF

Signed-off-by: Tsunehisa Doi <Doi.Tsunehisa@jp.fujitsu.com>
Signed-off-by: Tomonari Horikoshi <t.horikoshi@jp.fujitsu.com>
xen/arch/ia64/vmx/vmx_hypercall.c

index 3d34babe1530d611ef8eb1d80372c76f7664e878..bc3c6e7cabac497f61758a7e63c25a054b41cf81 100644 (file)
@@ -59,21 +59,23 @@ do_hvm_op(unsigned long op, XEN_GUEST_HANDLE(void) arg)
         }
         else if (IS_PRIV(current->domain)) {
             d = find_domain_by_id(a.domid);
-            if (!d)
+            if (d == NULL)
                 return -ESRCH;
         }
         else
             return -EPERM;
 
         if (op == HVMOP_set_param) {
-            rc = 0;
             d->arch.hvm_domain.params[a.index] = a.value;
+            rc = 0;
+        }
+        else {
+            a.value = d->arch.hvm_domain.params[a.index];
+            rc = copy_to_guest(arg, &a, 1) ? -EFAULT : 0;
         }
-        else
-            rc = d->arch.hvm_domain.params[a.index];
 
         put_domain(d);
-        return rc;
+        break;
     }
 
     default: